package com.learner.ucenter.service;

import com.learner.pojo.user.GoodFriend;
import com.learner.pojo.user.vo.DelGoodFriendRequestVo;
import com.learner.pojo.user.vo.MyFriendListResultVo;
import com.learner.pojo.user.vo.RecentConversationVo;
import com.learner.pojo.user.vo.SingleRecentConversationResultVo;

import java.util.List;

/**
 * @author ice2020x
 * @Date: 2023/2/26
 * @Description: 好友关系
 **/
public interface GoodFriendService {

    /**
     * 获取我的好友列表
     *
     * @param userId 用户id
     * @return MyFriendListResultVo 我的好友
     */
    List<MyFriendListResultVo> getMyFriendsList(String userId);

    /**
     * 根据id列表查询数据，传入的数据为用户id 以及一个最近的id的列表，没有做最近逻辑的判断
     *
     * @param recentConversationVo 参数
     * @return 结果
     */
    List<SingleRecentConversationResultVo> getRecentConversation(RecentConversationVo recentConversationVo);

    /**
     * 删除好友
     *
     * @param requestVo 好友消息
     */
    void deleteFriend(DelGoodFriendRequestVo requestVo);

    /**
     * 添加好友消息
     *
     * @param goodFriend 好友消息
     */
    void addFriend(GoodFriend goodFriend);
}
